package com.ruoyi.userr.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.ibatis.type.Alias;

/**
 * 积分流水对象 point_flow
 * 
 * @author hy
 * @date 2025-08-17
 */
@Alias("UserPointFlow")
public class PointFlow extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 流水ID */
    private Integer id;

    /** 用户ID */
    @Excel(name = "用户ID")
    private Integer userId;

    /** 积分规则ID */
    @Excel(name = "积分规则ID")
    private Integer ruleId;

    /** 积分变动值（正为获得，负为消耗） */
    @Excel(name = "积分变动值", readConverterExp = "正=为获得，负为消耗")
    private Long point;

    /** 操作后剩余积分 */
    @Excel(name = "操作后剩余积分")
    private Long balance;

    /** 是否删除：0正常 1删除 */
    private Integer del;

    public void setId(Integer id) 
    {
        this.id = id;
    }

    public Integer getId() 
    {
        return id;
    }

    public void setUserId(Integer userId) 
    {
        this.userId = userId;
    }

    public Integer getUserId() 
    {
        return userId;
    }

    public void setRuleId(Integer ruleId) 
    {
        this.ruleId = ruleId;
    }

    public Integer getRuleId() 
    {
        return ruleId;
    }

    public void setPoint(Long point) 
    {
        this.point = point;
    }

    public Long getPoint() 
    {
        return point;
    }

    public void setBalance(Long balance) 
    {
        this.balance = balance;
    }

    public Long getBalance() 
    {
        return balance;
    }

    public void setDel(Integer del) 
    {
        this.del = del;
    }

    public Integer getDel() 
    {
        return del;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("ruleId", getRuleId())
            .append("point", getPoint())
            .append("balance", getBalance())
            .append("createTime", getCreateTime())
            .append("del", getDel())
            .toString();
    }
}
